<?php
require_once 'glob.php';
$action=$_REQUEST['action'];
$page=$_REQUEST['page'];
$pagesize=20;

switch ($action) {
	/******************************************************************/
	case 'list':
		$modules=get_modulesinfo('modules/');
		get_list_arr($modules,'moduleslist','modules_list.htm',$pagesize,'fypage',$page,'?action=list&');
		//*/
		break;

		/******************************************************************/
	case 'admindo':

		$mod=$_REQUEST['mod'];
		$adminpanel=$_REQUEST['adminpanel'];
		$sql='select adminpanel from sn_mods where dir="'.$mod.'"';
		$res=$db->getrow($sql);
		if( $adminpanel!==$res['adminpanel'])
		{
			sys_msg('管理面板载入失败，和系统信息不一致,请重新安装后再试',1);
		}else{
			if(!file_exists($mod.'/'.$adminpanel)) {
				sys_msg('管理面板载入失败，管理员面板文件缺失,请重新安装后再试',1);
			}
			if($mod!==""&&$adminpanel!==""){
				$moduleadmin=$mod.'/'.$adminpanel;
			}
			//拼接模块url
			function dourl($modaction,$mod,$adminpanel) {
				if($modaction!==''){
				$strurl="?action=admindo&modaction=".$modaction."&mod=".$mod."&adminpanel=".$adminpanel;
					
				}else{
				$strurl="?action=admindo&mod=".$mod."&adminpanel=".$adminpanel;
					
				}
				return $strurl;
			}

			//引入模块
			require_once $moduleadmin; //导入模块管理界面
		}

		break;
	case 'install':
		if($_REQUEST['moddir']!==""&&is_dir($_REQUEST['moddir']))
		{
			$post=array(
			dir=>$_REQUEST['moddir'],
			name=>$_REQUEST['name'],
			is_install=>'Y'
			);
			if($_REQUEST['adminpanel']==""||$_REQUEST['adminpanel']==null){
				$post['adminpanel']='nopanel';
			}else{
				if(file_exists($_REQUEST['moddir'].'/'.$_REQUEST['adminpanel'])) {
			 	$post['adminpanel']=$_REQUEST['adminpanel'];
				}else {
			 	sys_msg('模块安装失败，管理员面板文件缺失',1);
				}
			}
			$sql='select is_install from sn_mods where dir="'.$moddir.'"';
			$res=$db->getrow($sql);
			if($res){
				$res=$db->update('sn_mods',$post,dir);
			}else {
				$res=$db->insert('sn_mods',$post);
			}
			if($res==true){
				sys_msg('模块安装成功',0);
			}else{
				sys_msg('模块安装失败',1);
			}
		}else {
			sys_msg('安装失败，模块不存在！', 1);
		}
		break;
	case 'uninstall':
		if($_REQUEST['moddir']!==""||is_dir($_REQUEST['moddir']))
		{
			$post=array(
			dir=>$_REQUEST['moddir'],
			is_install=>'N'
			);
			$res=$db->update('sn_mods',$post,dir);
			if($res==true){
				sys_msg('模块卸载成功',0);
			}else{
				sys_msg('模块卸载失败',1);
			}
		}else {
			sys_msg('卸载失败，模块不存在！', 1);
		}
		break;
	default:
		$modules=get_modulesinfo('modules/');
		get_list_arr($modules,'moduleslist','modules_list.htm',$pagesize,'fypage',$page,'?action=list&');
		//*/
		break;

}

?>